//[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[
/**
 *	GAME FREAK inc.
 *
 *	@file		zkn_gira.c
 *	@brief		図鑑ギラティナヘッダ
 *	@author		tomoya takahashi
 *	@data		2008.06.23
 *
 */
//]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]

#include "common.h"

#include "system/arc_util.h"

#include "msgdata/msg.naix"
#include "application/zukanlist/zkn_gira.h"

//-----------------------------------------------------------------------------
/**
 *					コーディング規約
 *		●関数名
 *				１文字目は大文字それ以降は小文字にする
 *		●変数名
 *				・変数共通
 *						constには c_ を付ける
 *						staticには s_ を付ける
 *						ポインタには p_ を付ける
 *						全て合わさると csp_ となる
 *				・グローバル変数
 *						１文字目は大文字
 *				・関数内変数
 *						小文字と”＿”と数字を使用する 関数の引数もこれと同じ
*/
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
/**
 *					定数宣言
*/
//-----------------------------------------------------------------------------

static u32 ZKN_GIRA_ZukanDataArcIdx = ARC_ZUKAN_DATA;
static u32 ZKN_GIRA_GramGmm = NARC_msg_zkn_gram_dat;
static u32 ZKN_GIRA_HeightGmm = NARC_msg_zkn_height_dat;

//-----------------------------------------------------------------------------
/**
 *					構造体宣言
*/
//-----------------------------------------------------------------------------

//-----------------------------------------------------------------------------
/**
 *					プロトタイプ宣言
*/
//-----------------------------------------------------------------------------

//----------------------------------------------------------------------------
/**
 *	@brief	各データファイルの情報を初期化
 *
 *	@param	gira_formno		ギラティナフォルム
 */
//-----------------------------------------------------------------------------
void ZKN_GIRA_Init( u32 gira_formno )
{
	if( gira_formno == 0 ){
		ZKN_GIRA_ZukanDataArcIdx	= ARC_ZUKAN_DATA_GIRA;
		ZKN_GIRA_GramGmm			= NARC_msg_zkn_gram_gira_dat;
		ZKN_GIRA_HeightGmm			= NARC_msg_zkn_height_gira_dat;
	}else{
		ZKN_GIRA_ZukanDataArcIdx	= ARC_ZUKAN_DATA;
		ZKN_GIRA_GramGmm			= NARC_msg_zkn_gram_dat;
		ZKN_GIRA_HeightGmm			= NARC_msg_zkn_height_dat;
	}
}

//----------------------------------------------------------------------------
/**
 *	@brief	図鑑データのアーカイブインデックスうを取得
 *
 *	@return	図鑑データのアーカイブインデックス
 */
//-----------------------------------------------------------------------------
u32 ZKN_GIRA_GetZukanDataArcIdx( void )
{
	return ZKN_GIRA_ZukanDataArcIdx;
}

//----------------------------------------------------------------------------
/**
 *	@brief	重さGMMのアーカイブインデックスを取得
 *
 *	@return	重さGMMのアーカイブインデックス
 */
//-----------------------------------------------------------------------------
u32 ZKN_GIRA_GetGramGmm( void )
{
	return ZKN_GIRA_GramGmm;
}

//----------------------------------------------------------------------------
/**
 *	@brief	高さGMMのアーカイブインデックスを取得
 *
 *	@return	高さGMMのアーカイブインデックス
 */
//-----------------------------------------------------------------------------
u32 ZKN_GIRA_GetHeightGmm( void )
{
	return ZKN_GIRA_HeightGmm;
}


//============================================================================================
//============================================================================================
//============================================================================================
#ifdef PM_DEBUG
#include "zkn_data/zukan_data.naix"

// ジョウト図鑑のポケモン取得
u16 * DEBUG_JohtoZukanPokeGet( u32 heapID )
{
	u16 * buf;
	u32	siz;

	// 読み込み
	buf = ArcUtil_LoadEx(
			ZKN_GIRA_GetZukanDataArcIdx(),
			NARC_zukan_data_zkn_sort_shinoh_dat,
			FALSE,
			heapID,
			ALLOC_TOP,
			&siz );

	return buf;
}

#endif	// PM_DEBUG